(0) Obligation:
Runtime Complexity TRS:
The TRS R consists of the following rules:
f(c(a, z, x)) → b(a, z)
b(x, b(z, y)) → f(b(f(f(z)), c(x, z, y)))
b(y, z) → z
Rewrite Strategy: INNERMOST
(1) CpxTrsToCdtProof (BOTH BOUNDS(ID, ID) transformation)
Converted CpxTRS to CDT
(2) Obligation:
Complexity Dependency Tuples Problem
Rules:
f(c(a, z0, z1)) → b(a, z0)
b(z0, b(z1, z2)) → f(b(f(f(z1)), c(z0, z1, z2)))
b(z0, z1) → z1
Tuples:
F(c(a, z0, z1)) → c1(B(a, z0))
B(z0, b(z1, z2)) → c2(F(b(f(f(z1)), c(z0, z1, z2))), B(f(f(z1)), c(z0, z1, z2)), F(f(z1)), F(z1))
S tuples:
F(c(a, z0, z1)) → c1(B(a, z0))
B(z0, b(z1, z2)) → c2(F(b(f(f(z1)), c(z0, z1, z2))), B(f(f(z1)), c(z0, z1, z2)), F(f(z1)), F(z1))
K tuples:none
Defined Rule Symbols:
f, b
Defined Pair Symbols:
F, B
Compound Symbols:
c1, c2
(3) CdtUnreachableProof (EQUIVALENT transformation)
The following tuples could be removed as they are not reachable from basic start terms:
B(z0, b(z1, z2)) → c2(F(b(f(f(z1)), c(z0, z1, z2))), B(f(f(z1)), c(z0, z1, z2)), F(f(z1)), F(z1))
(4) Obligation:
Complexity Dependency Tuples Problem
Rules:
f(c(a, z0, z1)) → b(a, z0)
b(z0, b(z1, z2)) → f(b(f(f(z1)), c(z0, z1, z2)))
b(z0, z1) → z1
Tuples:
F(c(a, z0, z1)) → c1(B(a, z0))
S tuples:
F(c(a, z0, z1)) → c1(B(a, z0))
K tuples:none
Defined Rule Symbols:
f, b
Defined Pair Symbols:
F
Compound Symbols:
c1
(5) CdtGraphRemoveDanglingProof (ComplexityIfPolyImplication transformation)
Removed 1 of 1 dangling nodes:
F(c(a, z0, z1)) → c1(B(a, z0))
(6) Obligation:
Complexity Dependency Tuples Problem
Rules:
f(c(a, z0, z1)) → b(a, z0)
b(z0, b(z1, z2)) → f(b(f(f(z1)), c(z0, z1, z2)))
b(z0, z1) → z1
Tuples:none
S tuples:none
K tuples:none
Defined Rule Symbols:
f, b
Defined Pair Symbols:none
Compound Symbols:none
(7) SIsEmptyProof (EQUIVALENT transformation)
The set S is empty
(8) BOUNDS(O(1), O(1))